package Model.Construction;

import Model.Ville;
import java.util.Vector;

public abstract class Infrastructure extends Object {

    //Ici sont défini les différents biens
    public static final int ELECTRICITE = 0;
    public static final int TEXTILE = 1;
    public static final int NOURRITURE = 2;
    public static final int EAU = 3;
    public static final int POPULATION = 4;
    public static final int NOURRITURE_TEXTILE = 5;
    protected Ville ville;
    protected int pos_x, pos_y; //position sur la grille de l'angle sup gauche de l'infra
    protected int taille_x, taille_y; //taille de batiment en x et y
    protected int prix_construction;

    public Infrastructure(int taille_x, int taille_y, Ville ville, int prixcons) {
        this.taille_x = taille_x;
        this.taille_y = taille_y;
        this.ville = ville;
        this.prix_construction = prixcons;
    }

    public void setVille(Ville v) {
        ville = v;
    }

    public int getPosX() {
        return pos_x;
    }

    public int getPosY() {
        return pos_y;
    }

    public int getLargeur() {
        return taille_x;
    }

    public int getHauteur() {
        return taille_y;
    }

    public int getPrixConstruction() {
        return prix_construction;
    }

    public int getPrixDestruction() {
        return prix_construction / 2;
    }

    public int getPrixDeplacement() {
        return (2 * prix_construction) / 3;
    }

    public String getInfo() {
        String s = "Position :  " + pos_x + "," + pos_y + "\n";
        return s;
    }

    public void destruction() {
        ville.removeArgent(getPrixDestruction());
    }

    public void deplacement() {
        ville.removeArgent(getPrixDeplacement());
    }

    public void ajoutAVille(int x, int y) {
        ville.removeArgent(prix_construction);
        pos_x = x;
        pos_y = y;
    }
}
